Настройка карт монтирования

В приложении automount пространство имен распределенной файловой системы настраивается с помощью конфигурационных файлов, которые называются картами монтирования. Эти файлы находятся в папке /etc и начинаются с префикса auto.*. По назначению и используемому синтаксису карты разделяются на несколько типов, описаны ниже.

Главная карта

Главная карта (англ. master map) это файл, на который указывает параметр master_map_name из конфигурационного файла /etc/autofs.conf. Главная карта является точкой входа для построения пространства имен, но из этого файла не получится подключить конкретные общие ресурсы, т.к. главная карта содержит ссылки только на другие карты монтирования — прямые, косвенные и специальные. Кроме ссылок на другие карты в главной карте могут быть инструкции для включения содержимого из дополнительных источников, например, из других файлов или через механизм NSS.

Карты прямого монтирования

Карты прямого монтирования (англ. direct maps) – это файлы, которые встраиваются в пространство имен из главной карты с помощью специальной точки монтирования «/-». Если в главной карте определено несколько карт прямого монтирования, то содержимое этих файлов будет суммироваться. Карты прямого монтирования называются «прямыми», потому что файловая система autofs монтируется напрямую в каталоги, определенные точками монтирования этих карт. Например, если в файле /etc/auto.direct задана ссылка с точкой монтирования /docs/share, то файловая система autofs будет смонтирована напрямую в каталог /docs/share, и он станет ловушкой монтирования, что можно будет проверить с помощью утилиты findmnt.

Карты косвенного монтирования

Карты косвенного монтирования (англ. indirect maps) – это файлы, которые встраиваются в пространство имен одним из следующих способов:

  • из главной карты, если в качестве точки монтирования указан абсолютный путь к каталогу;

  • из других карт, если задан параметр монтирования -fstype=autof.

Если несколько карт косвенного монтирования используют одну и туже точку монтирования, то будет подключена только первая из них. Остальные записи утилита automount проигнорирует.

Карты косвенного монтирования называются «косвенными», потому что файловая система autofs монтируется не напрямую в каталоги, определенные точками монтирования этих карт, а в родительские каталоги. Например, если в главной карте определена точка монтирования /docs с ссылкой на карту /etc/auto.share, а в карте auto.share, в свою очередь, определена точка монтирования share, ведущая уже на файловый сервер, то файловая система autofs будет смонтирована в родительский каталог /docs, а не /docs/share.

Карты косвенного монтирования позволяют формировать сведения динамически с помощью символов подстановки («*» и «&») и программных карт.

Программные карты

Программные карты (англ. program map) – это разновидность карт косвенного монтирования, когда на файл устанавливается атрибут исполнения +x. Исполняемый код получает имя точки монтирования в качестве параметра и должен передать необходимые параметры для монтирования в стандартный поток вывода.

Специальные карты

Специальные карты (англ. special maps) – это карты, содержимое которых предопределено в программном коде утилиты automount. Для того, чтобы указать специальную карту, в сведениях для монтирования нужно использовать одно из следующих значений:

  • -hosts — подключает специальную карту NFS-ресурсов. Если в главной карте будет определена строка /net -hosts, то при обращении к каталогу /net/moscow в эту точку будут автоматически смонтированы ресурсы сервера moscow по протоколу NFS. Аналогичную функциональность для CIFS-ресурсов предоставляет программная карта /etc/auto.smb;

  • -passwd — подключает домашние директории пользователей с NFS-сервера;

  • -null — позволяет обнулить точку монтирования, чтобы исключить ее последующее использование. Учитывая, что утилита automount использует только первое значение ключа, строка с значением -null должна быть в самом начале.